package org.edu.modules.oa.entity;

import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecgframework.poi.excel.annotation.Excel;

import java.math.BigDecimal;
import java.util.Date;

@Data
//数据表名
@TableName("ve_oa_car_weizhang_shigu")
//返回值变程对象本身
@Accessors(chain = true)
//重写toString方法
@EqualsAndHashCode(callSuper = false)
public class VeOaCarWeizhangShiguEntity {
    /** id */
    //设置为自增长
    @TableId(type = IdType.AUTO)
    /**表示对model属性的说明或者数据操作更改
     value–字段说明
     name–重写属性名字
     dataType–重写属性类型
     required–是否必填
     example–举例说明
     hidden–隐藏**/
    @ApiModelProperty(value = "id")
    @TableField(value = "Id")
    private long id;

    /** 车辆id */
    //ApiModelProperty是备注用的
    @Excel(name = "车辆id", width = 15)
    //备注说明
    @ApiModelProperty(value = "车辆id")
    //对应数据库字段
    @TableField(value = "car_id")
    //后端对象值
    private Long carId;

    /**车辆名称*/
    @Excel(name = "车辆名称", width = 15)
    @ApiModelProperty(value = "车辆名称")
    @TableField(value = "car_name")
    private String carName;

    /**违章/事故类型*/
    @Excel(name = "违章/事故类型", width = 15)
    @ApiModelProperty(value = "违章/事故类型")
    @TableField(value = "weishi_type")
    private String weishiType;

    /**违章/事故日期*/
    @Excel(name = "违章/事故日期", width = 15)
    @ApiModelProperty(value = "违章/事故日期")
    @TableField(fill = FieldFill.INSERT)
    private Date weishiDate;

    /**司机*/
    @Excel(name = "司机", width = 15)
    @ApiModelProperty(value = "司机")
    @TableField(value = "driver_user")
    private String driverUser;

    /**违章地点*/
    @Excel(name = "违章地点", width = 15)
    @ApiModelProperty(value = "违章地点")
    @TableField(value = "weishi_address")
    private String weishiAddress;

    /**扣分数*/
    @Excel(name = "扣分数", width = 15)
    @ApiModelProperty(value = "扣分数")
    @TableField(value = "koufen_num")
    private Long koufenNum;

    /**罚款/赔偿金额*/
    @Excel(name = "罚款/赔偿金额", width = 15)
    @ApiModelProperty(value = "罚款/赔偿金额")
    @TableField(value = "weishi_price")
    private BigDecimal weishiPrice;

    /**违章/事故详情*/
    @Excel(name = "违章/事故详情", width = 15)
    @ApiModelProperty(value = "违章/事故详情")
    @TableField(value = "weishi_content")
    private String weishiContent;

    /**备注说明*/
    @Excel(name = "备注说明", width = 15)
    @ApiModelProperty(value = "备注说明")
    @TableField(value = "back_info")
    private String backInfo;

    /**录入人*/
    @Excel(name = "录入人", width = 15)
    @ApiModelProperty(value = "录入人")
    @TableField(value = "create_by")
    private String createBy;

    /**录入时间 */
    @Excel(name = "录入时间", width = 15)
    @ApiModelProperty(value = "录入时间")
    @TableField(fill = FieldFill.INSERT)
    private Date createTime;

    /**修改人 */
    @Excel(name = "修改人", width = 15)
    @ApiModelProperty(value = "修改人")
    @TableField(value = "update_by")
    private String updateBy;

    /**修改时间 */
    @Excel(name = "修改时间", width = 15)
    @ApiModelProperty(value = "修改时间")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date updateTime;

    /**逻辑删除 */
    @Excel(name = "逻辑删除", width = 15)
    @ApiModelProperty(value = "逻辑删除(1:已删除，0:未删除)")
    @TableLogic
    @TableField("is_deleted")
    private Integer isDeleted;

    /**终端ID */
    @Excel(name = "终端ID", width = 15)
    @ApiModelProperty(value = "终端ID")
    @TableField(value = "terminalId")
    private Integer terminalId;

    /**录入人名*/
    @Excel(name = "录入人名", width = 15)
    @ApiModelProperty(value = "录入人名")
    @TableField(value = "create_by_name")
    private String createByName;

    /**修改人名*/
    @Excel(name = "修改人名", width = 15)
    @ApiModelProperty(value = "修改人名")
    @TableField(value = "update_by_name")
    private String updateByName;
}
